package com.iris.live.services.data.models;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by ThinkPad on 2016/9/21.
 */
@Entity
@Table(name = "财务详单", schema = "sg_lsh", catalog = "")
@IdClass(财务详单ModelPK.class)
public class 财务详单Model {
    private String 许可;
    private String vin;
    private String 付款目的;
    private Integer 意向车型;
    private String 调车物流状态;
    private String 备注;
    private Timestamp 最近更新时间;
    private String 上次编辑账户;

    @Id
    @Column(name = "许可")
    public String get许可() {
        return 许可;
    }

    public void set许可(String 许可) {
        this.许可 = 许可;
    }

    @Id
    @Column(name = "VIN")
    public String getVin() {
        return vin;
    }

    public void setVin(String vin) {
        this.vin = vin;
    }

    @Basic
    @Column(name = "付款目的")
    public String get付款目的() {
        return 付款目的;
    }

    public void set付款目的(String 付款目的) {
        this.付款目的 = 付款目的;
    }

    @Basic
    @Column(name = "意向车型")
    public Integer get意向车型() {
        return 意向车型;
    }

    public void set意向车型(Integer 意向车型) {
        this.意向车型 = 意向车型;
    }

    @Basic
    @Column(name = "调车物流状态")
    public String get调车物流状态() {
        return 调车物流状态;
    }

    public void set调车物流状态(String 调车物流状态) {
        this.调车物流状态 = 调车物流状态;
    }

    @Basic
    @Column(name = "备注")
    public String get备注() {
        return 备注;
    }

    public void set备注(String 备注) {
        this.备注 = 备注;
    }

    @Basic
    @Column(name = "最近更新时间")
    public Timestamp get最近更新时间() {
        return 最近更新时间;
    }

    public void set最近更新时间(Timestamp 最近更新时间) {
        this.最近更新时间 = 最近更新时间;
    }

    @Basic
    @Column(name = "上次编辑账户")
    public String get上次编辑账户() {
        return 上次编辑账户;
    }

    public void set上次编辑账户(String 上次编辑账户) {
        this.上次编辑账户 = 上次编辑账户;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        财务详单Model 财务详单Model = (财务详单Model) o;

        if (许可 != null ? !许可.equals(财务详单Model.许可) : 财务详单Model.许可 != null) return false;
        if (vin != null ? !vin.equals(财务详单Model.vin) : 财务详单Model.vin != null) return false;
        if (付款目的 != null ? !付款目的.equals(财务详单Model.付款目的) : 财务详单Model.付款目的 != null) return false;
        if (意向车型 != null ? !意向车型.equals(财务详单Model.意向车型) : 财务详单Model.意向车型 != null) return false;
        if (调车物流状态 != null ? !调车物流状态.equals(财务详单Model.调车物流状态) : 财务详单Model.调车物流状态 != null) return false;
        if (备注 != null ? !备注.equals(财务详单Model.备注) : 财务详单Model.备注 != null) return false;
        if (最近更新时间 != null ? !最近更新时间.equals(财务详单Model.最近更新时间) : 财务详单Model.最近更新时间 != null) return false;
        if (上次编辑账户 != null ? !上次编辑账户.equals(财务详单Model.上次编辑账户) : 财务详单Model.上次编辑账户 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 许可 != null ? 许可.hashCode() : 0;
        result = 31 * result + (vin != null ? vin.hashCode() : 0);
        result = 31 * result + (付款目的 != null ? 付款目的.hashCode() : 0);
        result = 31 * result + (意向车型 != null ? 意向车型.hashCode() : 0);
        result = 31 * result + (调车物流状态 != null ? 调车物流状态.hashCode() : 0);
        result = 31 * result + (备注 != null ? 备注.hashCode() : 0);
        result = 31 * result + (最近更新时间 != null ? 最近更新时间.hashCode() : 0);
        result = 31 * result + (上次编辑账户 != null ? 上次编辑账户.hashCode() : 0);
        return result;
    }
}
